package com.example.easy.excel.entity.db;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.metadata.BaseRowModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 数据库需要的数据写在这个实体类,其他需要处理字段属性在业务层写就可以了
 * <p>
 * @author
 * @date: 2021/07/12
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserDB extends BaseRowModel implements Serializable {

    //说明:这个是excel导入到数据库的实体,所以字段属性是数据库的下划线的形式

    /**
     * 用户编号 数据库列字段,一一对应就行
     * index = 0 表示表格第一列,下面依次类推
     */
   // @ExcelProperty(index = 0)
    // private Integer user_id;
    /**
     * 用户姓名
     */

    @ExcelProperty(value = {"用户姓名"},index = 0)
    private String name;
    /**
     * 用户年龄
     */
    @ExcelProperty(value = {"用户年龄"},index = 1)
    private String age;
    /**
     * 用户生日
     */
    @ExcelProperty(index = 2)
    private String birthday;
    /**
     * 性别(0表示女,1表示男)可以拓展3表示变态
     */
    @ExcelProperty(index = 3)
    private String sex;
    /**
     * 用户身高
     */

    @ExcelProperty(value = {"用户身高"},index = 4)
    private String height;
    /**
     * 用户地址
     */
    @ExcelProperty(index = 5)
    private String address;

    //如果还需要导入列的信息在这里继续写就行了,我这个示例是把表格所有的字段都导入的数据库
    // 如果有的表格的列不需要导入,那么就直接把上面写的属性删掉一些即可
    @ExcelProperty(index = 6)
    private String credits;

    @ExcelProperty(index = 7)
    //@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date createTime;

}
